﻿using System;

namespace MatlabBridge.IO
{
    /// <summary></summary>
    public enum MatFileAccess
    {
        /// <summary>Opens file for reading only; determines the current version of the MAT-file by inspecting the files and preserves the current version.</summary>
        Read,
        /// <summary>Opens file for update, both reading and writing, but does not create the file if the file does not exist (equivalent to the r+ mode of fopen); determines the current version of the MAT-file by inspecting the files and preserves the current version.</summary>
        Update,
        /// <summary>Opens file for writing only; deletes previous contents, if any.</summary>
        Write,
        /// <summary>Creates a Level 4 MAT-file, compatible with MATLAB Versions 4 software and earlier.</summary>
        WriteLevel4,
        /// <summary>
        /// Opens file for writing character data using the default character set for your system. The resulting MAT-file can be read with MATLAB Version 6 or 6.5 software.
        ///
        /// If you do not use the wL mode switch, MATLAB writes character data to the MAT-file using Unicode® character encoding by default.
        /// </summary>
        WriteSystemCharSet,
        /// <summary>Opens file for writing compressed data.</summary>
        WriteCompressed,
        /// <summary>Creates a MAT-file in an HDF5-based format that can store objects occupy more than 2 GB.</summary>
        WriteHDF5
    }
}
